<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>lwIP: src/core/def.c File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">lwIP
   &#160;<span id="projectnumber">2.1.2</span>
   </div>
   <div id="projectbrief">Lightweight IP stack</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('def_8c.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">def.c File Reference</div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &quot;<a class="el" href="opt_8h.html">lwip/opt.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="def_8h.html">lwip/def.h</a>&quot;</code><br />
<code>#include &lt;string.h&gt;</code><br />
</div><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ad637280639de4066392e6b5614fa3e56"><td class="memItemLeft" align="right" valign="top">u16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="def_8c.html#ad637280639de4066392e6b5614fa3e56">lwip_htons</a> (u16_t n)</td></tr>
<tr class="separator:ad637280639de4066392e6b5614fa3e56"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a14f94347a5b9b9e3602705b75b7ae524"><td class="memItemLeft" align="right" valign="top">u32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="def_8c.html#a14f94347a5b9b9e3602705b75b7ae524">lwip_htonl</a> (u32_t n)</td></tr>
<tr class="separator:a14f94347a5b9b9e3602705b75b7ae524"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaeece028198cdaea2f0d2f1d691752c02"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sys__nonstandard.html#gaeece028198cdaea2f0d2f1d691752c02">lwip_strnstr</a> (const char *buffer, const char *token, size_t n)</td></tr>
<tr class="separator:gaeece028198cdaea2f0d2f1d691752c02"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga263cbafcb697eff964139a9998a6668a"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sys__nonstandard.html#ga263cbafcb697eff964139a9998a6668a">lwip_stricmp</a> (const char *str1, const char *str2)</td></tr>
<tr class="separator:ga263cbafcb697eff964139a9998a6668a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga997dcc49451121d4ed755b33bc7bd26a"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sys__nonstandard.html#ga997dcc49451121d4ed755b33bc7bd26a">lwip_strnicmp</a> (const char *str1, const char *str2, size_t len)</td></tr>
<tr class="separator:ga997dcc49451121d4ed755b33bc7bd26a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf15b4fbaaae5bb7f6da4301f3f979284"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__sys__nonstandard.html#gaf15b4fbaaae5bb7f6da4301f3f979284">lwip_itoa</a> (char *result, size_t bufsize, int number)</td></tr>
<tr class="separator:gaf15b4fbaaae5bb7f6da4301f3f979284"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Common functions used throughout the stack.</p>
<p>These are reference implementations of the byte swapping functions. Again with the aim of being simple, correct and fully portable. Byte swapping is the second thing you would want to optimize. You will need to port it to your architecture and in your cc.h:</p>
<p>#define lwip_htons(x) your_htons #define lwip_htonl(x) your_htonl</p>
<p>Note lwip_ntohs() and lwip_ntohl() are merely references to the htonx counterparts.</p>
<p>If you #define them to htons() and htonl(), you should #define LWIP_DONT_PROVIDE_BYTEORDER_FUNCTIONS to prevent lwIP from defining htonx/ntohx compatibility macros. </p>
</div><h2 class="groupheader">Function Documentation</h2>
<a id="a14f94347a5b9b9e3602705b75b7ae524"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a14f94347a5b9b9e3602705b75b7ae524">&#9670;&nbsp;</a></span>lwip_htonl()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">u32_t lwip_htonl </td>
          <td>(</td>
          <td class="paramtype">u32_t&#160;</td>
          <td class="paramname"><em>n</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Convert an u32_t from host- to network byte order.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">n</td><td>u32_t in host byte order </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>n in network byte order </dd></dl>

</div>
</div>
<a id="ad637280639de4066392e6b5614fa3e56"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad637280639de4066392e6b5614fa3e56">&#9670;&nbsp;</a></span>lwip_htons()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">u16_t lwip_htons </td>
          <td>(</td>
          <td class="paramtype">u16_t&#160;</td>
          <td class="paramname"><em>n</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Convert an u16_t from host- to network byte order.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">n</td><td>u16_t in host byte order </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>n in network byte order </dd></dl>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="def_8c.html">def.c</a></li>
    <li class="footer">Generated by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
  </ul>
</div>
</body>
</html>
